home *** CD-ROM | disk | FTP | other *** search
/ MacWorld 1999 January - Disc 2 / Macworld (1999-01) (Disk 2).dmg / Serious Demos / Symbolic Composer 4.2 / Environment / System / CADAR / Convert / interval-to-tonality < prev    next >
Lisp/Scheme  |  1998-10-22  |  1KB  |  50 lines

  1. interval-to-tonality 
  2. interval-list &optional name
  3.  
  4. works like create-tonality but uses intervals
  5. (chromatically) if name is used
  6. otherwise like just like r-time in c-sound-menu
  7. of cadar 
  8.  
  9. (setq interval-list '(2 2 1 2 2 2 1))
  10. ->(2 2 1 2 2 2 1)
  11. (interval-to-tonality interval-list 'foo)
  12. -> create-tonality foo
  13.  
  14. (activate-tonality (foo c 5))
  15. ((c 5 d 5 e 5 f 5 g 5 a 5 b 5))
  16.  
  17. (interval-to-tonality interval-list)
  18. ->(0 2 4 5 7 9 11)
  19.  
  20. (create-tonality goo 
  21. (interval-to-tonality interval-list))
  22. -> create-tonality goo
  23.  
  24. (activate-tonality (goo c 5))
  25. ->((c 5 d 5 e 5 f 5 g 5 a 5 b 5))
  26.  
  27. (setq changed-interval-list 
  28. (change-every-n interval-list '(1 3 4 6 7) '(1 2 3)))
  29. ->(3 2 3 5 2 3 3)
  30.  
  31. (interval-to-tonality changed-interval-list 'bar)
  32. ->  create-tonality bar 
  33.  
  34. (activate-tonality (bar c 5))
  35. ->((c 5 d# 5 f 5 g# 5 c# 6 d# 6 f# 6))
  36.  
  37. (setq further-changed-interval-list 
  38.       (change-every-n changed-interval-list 
  39.                       '(1 3 4 6 7) -1))
  40.  
  41. (interval-to-tonality changed-interval-list 'baaz)
  42. -> create-tonality baaz
  43.  
  44. (activate-tonality (baaz c 5))
  45. ->((c 5 d# 5 f 5 g# 5 c# 6 d# 6 f# 6))
  46.  
  47.  
  48. (syms-to-ton (interval-to-tonality '(2 1 1 2 1 1 2)))
  49. ->(c 4 d 4 d# 4 e 4 f# 4 g 4 g# 4)
  50.